In [1]:
import pandas as pd
In [2]:
df = pd.read_csv('result.csv')
df
Out[2]:
Name Sex Cnt Year
0 Mary F 7065 1880
1 Anna F 2604 1880
2 Emma F 2003 1880
3 Elizabeth F 1939 1880
4 Minnie F 1746 1880
... ... ... ... ...
1989396 Zyheem M 5 2019
1989397 Zykel M 5 2019
1989398 Zyking M 5 2019
1989399 Zyn M 5 2019
1989400 Zyran M 5 2019

1989401 rows × 4 columns

In [13]:
df_f_top = df[ df.Sex == 'F' ]\
.sort_values('Cnt', ascending=False)\
.drop_duplicates(subset=['Name'])\
.head(10)
df_f_top
Out[13]:
Name Sex Cnt Year
431067 Linda F 99690 1947
180208 Mary F 73985 1921
726774 Jennifer F 63602 1972
633502 Lisa F 60269 1965
472256 Patricia F 56442 1951
1002208 Jessica F 55992 1987
1002209 Ashley F 54853 1987
504201 Deborah F 54683 1954
515183 Debra F 50563 1955
431070 Barbara F 48793 1947
In [14]:
df_m_top = df[ df.Sex == 'M' ]\
.sort_values('Cnt', ascending=False)\
.drop_duplicates(subset=['Name'])\
.head(10)
df_m_top
Out[14]:
Name Sex Cnt Year
437170 James M 94766 1947
544655 Michael M 92726 1957
437171 Robert M 91645 1947
437172 John M 88320 1947
521907 David M 86285 1955
437173 William M 66989 1947
954132 Christopher M 60026 1984
427051 Richard M 58876 1946
579839 Mark M 58733 1960
819789 Jason M 55653 1977
In [15]:
df[ df.Sex == 'M' ]\
.sort_values('Cnt', ascending=False)\
.drop_duplicates(subset=['Name'])\
.drop_duplicates(subset=['Year'])\
.head(10)
Out[15]:
Name Sex Cnt Year
437170 James M 94766 1947
544655 Michael M 92726 1957
521907 David M 86285 1955
954132 Christopher M 60026 1984
427051 Richard M 58876 1946
579839 Mark M 58733 1960
819789 Jason M 55653 1977
934618 Matthew M 50220 1983
489113 Thomas M 48642 1952
1060536 Joshua M 44092 1989
In [16]:
df_all = pd.concat([df_m_top, df_f_top])
df_all
Out[16]:
Name Sex Cnt Year
437170 James M 94766 1947
544655 Michael M 92726 1957
437171 Robert M 91645 1947
437172 John M 88320 1947
521907 David M 86285 1955
437173 William M 66989 1947
954132 Christopher M 60026 1984
427051 Richard M 58876 1946
579839 Mark M 58733 1960
819789 Jason M 55653 1977
431067 Linda F 99690 1947
180208 Mary F 73985 1921
726774 Jennifer F 63602 1972
633502 Lisa F 60269 1965
472256 Patricia F 56442 1951
1002208 Jessica F 55992 1987
1002209 Ashley F 54853 1987
504201 Deborah F 54683 1954
515183 Debra F 50563 1955
431070 Barbara F 48793 1947
In [ ]: